WordPress System Rezerwacji Klientów

Dokumentacja CC WordPress System Rezerwacji Klientów
Kompleksowa dokumentacja dla wtyczki zaawansowanego systemu rezerwacji WordPress (cc-wp-customer-reservation) z kalendarzem, statystykami, zarządzaniem klientami oraz integracją z popularnymi bibliotekami kalendarzowymi.

Spis treści
  1. Wprowadzenie
  2. Instalacja i wymagania systemowe
  3. Aktywacja licencji
  4. Panel zarządzania
  5. Zarządzanie klientami
  6. Zarządzanie usługami
  7. System rezerwacji
  8. Kalendarz rezerwacji
  9. Blokowanie czasu
  10. System napiwków
  11. Statystyki i raporty
  12. Import klientów z CSV
  13. Formularz rezerwacji na froncie
  14. Personalizacja wyglądu
  15. Powiadomienia email
  16. Ustawienia zaawansowane
  17. Rozwiązywanie problemów
  18. FAQ

1. Wprowadzenie
CC WordPress Customer Reservation to kompleksowy system zarządzania rezerwacjami dla WordPress, zaprojektowany z myślą o salonach fryzjerskich, gabinetach kosmetycznych, centrach medycznych oraz wszelkich firmach usługowych wymagających planowania wizyt klientów. Wtyczka oferuje intuicyjny interfejs, zaawansowane statystyki oraz pełną automatyzację procesu rezerwacji.

Kluczowe funkcje wtyczki:
  • Zaawansowany kalendarz rezerwacji z integracją FullCalendar 6.1
  • Kompleksowe zarządzanie klientami z historią wizyt
  • System usług z cenami, rabatami i czasem trwania
  • Blokowanie przedziałów czasowych (urlopy, przerwy)
  • System napiwków dla każdej rezerwacji
  • Szczegółowe statystyki finansowe i raporty
  • Import klientów z plików CSV
  • Formularz rezerwacji dla klientów na froncie witryny
  • Publiczny kalendarz z zajętymi terminami
  • Automatyczne powiadomienia email
  • Niestandardowe kolory interfejsu
  • Wielowalutowość i elastyczne ustawienia
  • System zarządzania licencjami

2. Instalacja i wymagania systemowe
Wymagania systemowe
  • WordPress 5.0 lub nowszy
  • PHP 7.4 lub nowszy
  • Baza danych MySQL 5.6 lub nowszy
  • Uprawnienia do tworzenia Custom Post Types
  • Możliwość wysyłania maili przez WordPress (opcjonalnie)
Proces instalacji
  1. Pobierz plik ZIP wtyczki z oficjalnej strony cocos.codes
  2. Zaloguj się do panelu administracyjnego WordPress
  3. Przejdź do: Wtyczki → Dodaj nową → Wyślij wtyczkę na serwer
  4. Wybierz pobrany plik ZIP i kliknij „Zainstaluj teraz”
  5. Po zakończeniu instalacji kliknij „Aktywuj wtyczkę”
  6. Wtyczka automatycznie zarejestruje Custom Post Types (rezerwacje, klienci, usługi)
  7. Zostanie utworzone nowe menu „Rezerwacje” w panelu WordPress
  8. Przejdź do Rezerwacje → Ustawienia aby skonfigurować wtyczkę
Info
Po instalacji wtyczka automatycznie utworzy trzy Custom Post Types: cc_client (klienci), cc_service (usługi) oraz cc_reservation (rezerwacje). Możesz opcjonalnie włączyć automatyczne dodawanie danych demo w ustawieniach.

3. Aktywacja licencji
Przed rozpoczęciem korzystania z pełnej funkcjonalności wtyczki konieczna jest aktywacja licencji:

  1. Po instalacji przejdź do Rezerwacje → Ustawienia
  2. Wybierz zakładkę „Licencja”
  3. Wprowadź klucz licencyjny otrzymany po zakupie
  4. Kliknij „Aktywuj licencję”
  5. Po pomyślnej aktywacji zobaczysz komunikat potwierdzający
  6. Wszystkie funkcje wtyczki zostaną odblokowane
Ostrzeżenie
Bez aktywnej licencji wtyczka będzie działała w trybie demonstracyjnym. W panelu administracyjnym będą wyświetlane komunikaty o nieaktywnej licencji, a większość funkcji zapisywania będzie zablokowana. Rejestracja Custom Post Types również wymaga aktywnej licencji.

4. Panel zarządzania
Panel zarządzania wtyczką dostępny jest w głównym menu WordPress pod nazwą „Rezerwacje” i składa się z następujących sekcji:

Główne zakładki menu:
  • Panel główny – przegląd najważniejszych statystyk i nadchodzących rezerwacji
  • Kalendarz – interaktywny kalendarz wszystkich rezerwacji i blokad czasowych
  • Rezerwacje – lista wszystkich rezerwacji z możliwością filtrowania i edycji
  • Klienci – zarządzanie bazą klientów z historią wizyt
  • Usługi – katalog usług z cenami i rabatami
  • Statystyki – szczegółowe raporty finansowe i analizy
  • Import klientów – masowy import danych klientów z plików CSV
  • Ustawienia – konfiguracja wszystkich funkcji wtyczki
Zakładki w ustawieniach:
  • Ustawienia – konfiguracja godzin pracy, walut, kolorów i powiadomień
  • Dokumentacja – link do pełnej instrukcji online
  • Licencja – zarządzanie licencją wtyczki
  • Wtyczki – informacje o innych produktach COCOS
  • Wsparcie – dostęp do pomocy technicznej
Wskazówka
Menu wtyczki jest automatycznie porządkowane dla lepszej ergonomii. Najczęściej używane funkcje (Panel główny, Kalendarz, Rezerwacje) znajdują się na początku, a ustawienia na końcu.

5. Zarządzanie klientami
System zarządzania klientami umożliwia kompleksowe prowadzenie bazy danych klientów wraz z pełną historią wizyt.

Dane przechowywane o kliencie:
  • Imię i nazwisko – pełna nazwa klienta (wyświetlana jako tytuł wpisu)
  • Numer telefonu – kontakt telefoniczny (używany do wykrywania duplikatów)
  • Adres email – wykorzystywany do powiadomień (opcjonalnie)
  • Notatki – dodatkowe informacje o kliencie (preferencje, alergje, uwagi)
  • Historia wizyt – automatycznie generowana lista wszystkich rezerwacji
Dodawanie nowego klienta:
  1. Przejdź do Rezerwacje → Klienci → Dodaj klienta
  2. Wpisz imię i nazwisko w polu tytułu
  3. Uzupełnij dane kontaktowe (telefon jest wymagany)
  4. Dodaj notatki jeśli są potrzebne
  5. Kliknij „Opublikuj”
Kolumny w liście klientów:
KolumnaOpis
Imię i nazwiskoNazwa klienta z linkiem do edycji
TelefonNumer kontaktowy
EmailAdres email klienta
Liczba wizytAutomatycznie liczona liczba rezerwacji
DataData dodania klienta do systemu
Historia wizyt klienta:
  • Przy edycji klienta wyświetlana jest tabela wszystkich jego rezerwacji
  • Informacje o dacie, godzinie, usłudze i statusie każdej wizyty
  • Oznaczenie czy wizyta została opłacona
  • Bezpośredni link do edycji każdej rezerwacji
Sukces
System automatycznie wykrywa duplikaty klientów na podstawie numeru telefonu podczas dodawania nowych rezerwacji. Jeśli klient o danym numerze już istnieje, zostanie automatycznie przypisany do rezerwacji.

6. Zarządzanie usługami
Katalog usług stanowi podstawę systemu rezerwacji, definiując dostępne usługi wraz z ich parametrami finansowymi i czasowymi.

Parametry usługi:
  • Nazwa usługi – wyświetlana w formularzach i na fakturach
  • Opis – szczegółowy opis usługi (opcjonalnie)
  • Czas trwania – w minutach (np. 30, 45, 60, 90, 120)
  • Cena – podstawowa cena usługi w wybranej walucie
  • Typ rabatu – procent (%) lub stała kwota
  • Wartość rabatu – wielkość rabatu zgodnie z typem
Typy rabatów:
TypOpisPrzykład
Brak rabatuPełna cena usługi100 PLN (bez rabatu)
Procent (%)Rabat procentowy od ceny100 PLN – 10% = 90 PLN
Stała kwotaRabat w określonej kwocie100 PLN – 15 PLN = 85 PLN
Dodawanie nowej usługi:
  1. Przejdź do Rezerwacje → Usługi → Dodaj usługę
  2. Wpisz nazwę usługi w polu tytułu
  3. Opcjonalnie dodaj opis w edytorze treści
  4. Wypełnij szczegóły usługi: czas trwania i cenę
  5. Ustaw rabat jeśli jest oferowany
  6. Kliknij „Opublikuj”
Kolumny w liście usług:
  • Nazwa usługi – nazwa z linkiem do edycji
  • Czas trwania – wyświetlany w minutach (np. „45 min”)
  • Cena – sformatowana cena z walutą (np. „80,00 PLN”)
  • Rabat – typ i wartość rabatu lub „—” jeśli brak
  • Data – data dodania usługi
Notatka
Rabat jest automatycznie uwzględniany we wszystkich obliczeniach statystyk i raportów. Cena końcowa rezerwacji to cena usługi po rabacie plus opcjonalny napiwek. Rabat nie może spowodować ujemnej ceny końcowej.

7. System rezerwacji
Rezerwacje stanowią rdzeń systemu, łącząc klientów z usługami w określonych terminach.

Dane rezerwacji:
  • Klient – wybór z bazy klientów (z wyszukiwarką AJAX)
  • Usługa – wybór z katalogu usług
  • Data – dzień rezerwacji
  • Godzina rozpoczęcia – czas rozpoczęcia usługi
  • Status – zaplanowana / zakończona / anulowana
  • Opłacona – czy wizyta została opłacona
  • Napiwek – dodatkowa kwota od klienta (opcjonalnie)
  • Notatki – dodatkowe informacje o rezerwacji
Statusy rezerwacji:
StatusKolorZnaczenie
ZaplanowanaNiebieski (#007bff)Rezerwacja potwierdzona, oczekująca na realizację
ZakończonaZielony (#28a745)Wizyta odbyła się, uwzględniana w statystykach
AnulowanaCzerwony (#dc3545)Rezerwacja anulowana, pomijana w statystykach
Dodawanie rezerwacji:
  1. Przejdź do Rezerwacje → Rezerwacje → Dodaj rezerwację
  2. Wyszukaj i wybierz klienta (wpisz imię, nazwisko lub telefon)
  3. Wybierz usługę z rozwijanej listy
  4. Ustaw datę i godzinę rezerwacji
  5. Wybierz status (domyślnie „Zaplanowana”)
  6. Opcjonalnie dodaj napiwek i notatki
  7. Kliknij „Opublikuj”
Szybka edycja w liście rezerwacji:
  • Zmiana statusu – kliknij w rozwijane menu w kolumnie „Status”
  • Oznaczanie płatności – kliknij ikonę checkmark w kolumnie „Opłacona”
  • Zmiany są zapisywane automatycznie przez AJAX
  • Wyświetlany jest spinner podczas zapisywania
Kolumny w liście rezerwacji:
  • Tytuł – automatycznie generowany: „Rezerwacja – [Klient] – [Usługa]”
  • Klient – imię i nazwisko z linkiem do karty klienta
  • Usługa – nazwa usługi z linkiem do edycji
  • Data wizyty – data i godzina w formacie z ustawień
  • Status – rozwijane menu do szybkiej zmiany
  • Opłacona – ikona TAK/NIE z możliwością szybkiej zmiany
Ostrzeżenie
System nie blokuje tworzenia nakładających się rezerwacji. Rekomendujemy korzystanie z kalendarza do planowania wizyt, który wizualnie pokazuje zajęte terminy. Dla dodatkowej ochrony można włączyć walidację dostępności w ustawieniach frontendu.

8. Kalendarz rezerwacji
Interaktywny kalendarz wykorzystuje bibliotekę FullCalendar 6.1 do wizualizacji wszystkich rezerwacji i blokad czasowych.

Funkcje kalendarza:
  • Różne widoki – miesiąc, tydzień, 3 dni, pojedynczy dzień
  • Kolorowanie wydarzeń – według statusu rezerwacji
  • Kliknięcie w rezerwację – przejście do edycji
  • Kliknięcie w datę – utworzenie nowej rezerwacji z predefiniowaną datą
  • Wskaźnik „teraz” – czerwona linia pokazująca aktualny czas
  • Responsywność – automatyczne dostosowanie do urządzeń mobilnych
  • Lokalizacja – automatyczne tłumaczenie na język WordPress
Widoki kalendarza:
WidokZastosowanieSzczegółowość
MiesiącPrzegląd długoterminowyTylko data i tytuł
TydzieńPlanowanie tygodnioweGodziny i szczegóły
3 dniAktualny okresSzczegółowe godziny
DzieńPlanowanie dziennePełne szczegóły wizyt
Kolorowanie rezerwacji w kalendarzu:
  • Niebieski – rezerwacje zaplanowane (#007bff)
  • Zielony – rezerwacje zakończone (#28a745)
  • Czerwony – rezerwacje anulowane (#dc3545)
  • Szary – blokady czasowe (#6c757d)
Używanie kalendarza:
  1. Przejdź do Rezerwacje → Kalendarz
  2. Wybierz preferowany widok (miesiąc/tydzień/dzień)
  3. Używaj przycisków „poprzedni/następny” do nawigacji
  4. Kliknij „Dzisiaj” aby wrócić do aktualnej daty
  5. Kliknij w rezerwację aby ją edytować
  6. Kliknij w wolny termin aby dodać nową rezerwację
Godziny pracy w kalendarzu:
  • Kalendarz automatycznie dostosowuje się do godzin pracy z ustawień
  • Domyślnie wyświetla przedział od godziny rozpoczęcia do zakończenia
  • Slot „cały dzień” jest wyłączony
  • Wszystkie godziny wyświetlane w formacie 24-godzinnym (HH:mm)
Wskazówka
Na urządzeniach mobilnych (ekrany <768px) kalendarz automatycznie przełącza się na widok dzienny dla lepszej czytelności. Pasek narzędzi jest również uproszczony na małych ekranach.

9. Blokowanie czasu
System blokowania czasu umożliwia rezerwację przedziałów czasowych bez przypisywania klienta i usługi – idealny do urlópów, przerw i niedostępności.

Czym jest blokada czasu:
  • Specjalny typ rezerwacji oznaczony jako „Blokada czasu”
  • Nie wymaga wyboru klienta ani usługi
  • Wymaga podania godziny rozpoczęcia i zakończenia
  • Wyświetlana w kalendarzu w kolorze szarym z ikoną 🚫
  • Nie jest uwzględniana w statystykach finansowych
  • Zapobiega tworzeniu normalnych rezerwacji w zablokowanym czasie
Tworzenie blokady czasu:
  1. Przejdź do Rezerwacje → Rezerwacje → Dodaj rezerwację
  2. Zaznacz checkbox „🚫 Blokada czasu” na górze formularza
  3. Pola Klient i Usługa zostaną automatycznie ukryte
  4. Ustaw datę blokady
  5. Podaj godzinę rozpoczęcia (wymagana)
  6. Podaj godzinę zakończenia (wymagana dla blokad)
  7. Opcjonalnie dodaj tytuł i notatki (np. „Urlop”, „Przerwa techniczna”)
  8. Kliknij „Opublikuj”
Różnice między rezerwacją a blokadą:
ElementRezerwacjaBlokada czasu
KlientWymaganyBrak (ukryte)
UsługaWymaganaBrak (ukryte)
Godzina końcaObliczana automatycznieWymagana ręcznie
PłatnośćTak (ukryte)Brak (ukryte)
NapiwekOpcjonalnyBrak (ukryte)
StatystykiUwzględnianaPomijana
Wyświetlanie blokad:
  • W liście rezerwacji – w kolumnie „Klient” wyświetla się „🚫 Blokada czasu”
  • W kalendarzu – szare pole z tekstem „🚫 Blokada czasu” + opcjonalny tytuł
  • Na froncie – wyświetlane jako „Zajęte” (bez szczegółów)
  • Zakres czasowy – pokazywany jako „data HH:mm – HH:mm”
Info
Checkbox „Blokada czasu” automatycznie pokazuje/ukrywa odpowiednie pola formularza za pomocą JavaScript. Gdy blokada jest zaznaczona, pola klienta, usługi, płatności i napiwku stają się niewymagane i ukryte. Pole godziny zakończenia staje się widoczne i wymagane.

10. System napiwków
Zaawansowany system napiwków umożliwia rejestrowanie dodatkowych wpłat od klientów i szczegółową analizę hojności klientów.

Funkcje systemu napiwków:
  • Pole napiwku w każdej rezerwacji (opcjonalne)
  • Automatyczne dodawanie do ceny końcowej rezerwacji
  • Osobne statystyki napiwków w dashboardzie
  • Ranking najhojniejszych klientów
  • Uwzględnienie w raportach finansowych
  • Śledzenie średniego napiwku na klienta
Dodawanie napiwku do rezerwacji:
  1. Otwórz rezerwację do edycji
  2. Znajdź pole „Napiwek (PLN):” w sekcji płatności
  3. Wpisz kwotę napiwku (np. 10.00)
  4. Napiwek zostanie automatycznie dodany do ceny końcowej
  5. Zapisz rezerwację
Obliczanie ceny końcowej:
Cena końcowa = (Cena usługi - Rabat) + Napiwek
Przykład:
Usługa: 100 PLN
Rabat 10%: -10 PLN
Napiwek: 15 PLN
Cena końcowa: 105 PLN
Statystyki napiwków dostępne w panelu:
  • Dashboard – kafelek z sumą napiwków w bieżącym miesiącu
  • Najhojniejsi klienci – ranking z sumą i średnią napiwków
  • Statystyki – szczegółowe raporty napiwków z podziałem na okresy
  • Zarobki – napiwki uwzględnione w raportach przychodów
Ranking najhojniejszych klientów (Dashboard):
KlientSuma napiwkówLiczba wizytŚrednia
Jan Kowalski150,00 PLN1015,00 PLN
Anna Nowak120,00 PLN815,00 PLN
Sukces
System napiwków pomaga identyfikować najbardziej zadowolonych i hojnych klientów. Średnia napiwku to świetny wskaźnik jakości obsługi. Możesz nagradzać najhojniejszych klientów dodatkowymi rabatami lub benefitami.

11. Statystyki i raporty
Kompleksowy system statystyk oferuje szczegółowe raporty finansowe, analizy klientów oraz prognozy przychodów.

Panel główny – kluczowe metryki:
  • Zarobki w tym miesiącu – suma przychodów z zakończonych wizyt
  • Liczba rezerwacji – wszystkie rezerwacje w bieżącym miesiącu
  • Zapłacone – suma opłaconych rezerwacji
  • Do zapłaty – suma nieopłaconych rezerwacji
  • Napiwki w tym miesiącu – osobna suma napiwków
Zakładka Statystyki – zaawansowane raporty:
  • Formularz filtrowania – wybór zakresu dat do analizy
  • Porównanie z poprzednim okresem – procentowa zmiana zarobków i rezerwacji
  • Wskaźnik anulowań – procent anulowanych rezerwacji
  • Prognoza przychodów – oczekiwane przychody z zaplanowanych wizyt
  • Wypełnienie dzisiaj – procent zajętych slotów czasowych
  • Średni czas między wizytami – analiza częstotliwości powrotów klientów
Wykres zarobków miesięcznych:
  • Wizualizacja zarobków dla każdego miesiąca w bieżącym roku
  • Podział na zapłacone (zielony) i do zapłaty (żółty)
  • Interaktywny wykres słupkowy z wartościami
  • Skrócone nazwy miesięcy dla lepszej czytelności
Statystyki godzinowe:
  • Wykres popularności każdej godziny dnia (0-23)
  • Identyfikacja szczytów i dołków obłożenia
  • Pomoc w optymalizacji godzin pracy
  • Wizualizacja jako wykres słupkowy
Statystyki dni tygodnia:
  • Porównanie zarobków dla każdego dnia (Pon-Nd)
  • Liczba rezerwacji dla każdego dnia
  • Identyfikacja najlepszych i najgorszych dni
  • Pomoc w planowaniu grafiku
Top klienci – trzy kategorie:
KategoriaKryteriumWyświetlane dane
Top klienci (wizyty)Liczba rezerwacjiImię, liczba wizyt
Top klienci (wydatki)Suma wydanych pieniędzyImię, suma, wizyty, średnia
Najhojniejsi (napiwki)Suma napiwkówImię, suma napiwków, średnia
Najgorsi klienci (anulowania):
  • Ranking klientów według liczby anulowanych wizyt
  • Procent anulowań względem wszystkich rezerwacji
  • Kolorowanie: >30% czerwone, inne szare
  • Pomoc w identyfikacji problematycznych klientów
Najpopularniejsze usługi:
  • Top 10 usług według liczby rezerwacji
  • Cena jednostkowa każdej usługi
  • Link do edycji usługi
  • Numerowanie od 1 do 10
Rentowność usług:
  • Ranking usług według całkowitego przychodu
  • Liczba wykonań każdej usługi
  • Cena jednostkowa i łączny przychód
  • Pomoc w identyfikacji najbardziej dochodowych usług
Nadchodzące rezerwacje:
  • 5 najbliższych zaplanowanych wizyt
  • Data, klient i usługa
  • Sortowanie chronologiczne
  • Link do edycji każdej rezerwacji
Statystyki rabatów:
  • Łączna kwota stracona na rabatach
  • Liczba udzielonych rabatów
  • Analiza skuteczności programu rabatowego
Eksport do CSV:
  • Przycisk eksportu w górnej części strony statystyk
  • Generowanie pliku CSV z wszystkimi rezerwacjami z wybranego okresu
  • Kolumny: Data, Godzina, Klient, Usługa, Cena, Rabat, Napiwek, Cena końcowa, Status, Zapłacone
  • Kodowanie UTF-8 z BOM dla polskich znaków
  • Nazwa pliku: statystyki-rezerwacje-[data].csv
Wskazówka
Regularnie przeglądaj statystyki aby zidentyfikować trendy w Twojej firmie. Zwróć szczególną uwagę na wskaźnik anulowań (powinien być <10%), wypełnienie (optymalne 60-80%) oraz najgorsze dni tygodnia (możliwość zmiany godzin pracy).

12. Import klientów z CSV
Funkcja masowego importu umożliwia szybkie dodanie dużej liczby klientów z pliku CSV, oszczędzając czas przy migracji z innych systemów.

Format pliku CSV:
  • Separator – przecinek (,)
  • Kodowanie – UTF-8
  • Pierwszy wiersz – nagłówki kolumn (będą pominięte)
  • Maksymalny rozmiar – 2MB
Kolumny w pliku CSV (w tej kolejności):
  1. Imię – wymagane
  2. Nazwisko – wymagane
  3. Telefon – wymagane (używany do wykrywania duplikatów)
  4. Email – opcjonalne
  5. Notatki – opcjonalne
Przykładowy plik CSV:
Imię,Nazwisko,Telefon,Email,Notatki
Jan,Kowalski,+48500100200,[email protected],Stały klient
Anna,Nowak,+48600200300,[email protected],Preferuje popołudnia
Piotr,Wiśniewski,+48700300400,,
Proces importu:
  1. Przejdź do Rezerwacje → Import klientów
  2. Przeczytaj instrukcję i wymagania
  3. Przygotuj plik CSV zgodnie z formatem
  4. Kliknij „Wybierz plik CSV” i wybierz plik
  5. Kliknij „🚀 Importuj klientów”
  6. Poczekaj na zakończenie importu
  7. Przeczytaj raport z wynikami
Walidacja podczas importu:
  • Sprawdzenie typu pliku – tylko text/csv i text/plain
  • Walidacja danych – wymagane pola nie mogą być puste
  • Wykrywanie duplikatów – na podstawie numeru telefonu
  • Sanityzacja danych – czyszczenie wszystkich wprowadzanych wartości
Rezultaty importu:
  • Zaimportowano – liczba pomyślnie dodanych klientów
  • Pominięto – liczba odrzuconych rekordów
  • Szczegóły błędów – maksymalnie 10 pierwszych błędów
  • Powody pominięcia – brak danych, duplikat, błąd zapisu
Przykładowy raport:
Sukces
Zaimportowano: 45 klientów. Pominięto: 3.

Szczegóły:
– Klient Jan Kowalski już istnieje (tel: +48500100200)
– Pominięto wiersz: brak wymaganych danych (Maria )
– Klient Anna Nowak już istnieje (tel: +48600200300)
Najlepsze praktyki importu:
  • Wykonaj kopię zapasową bazy przed dużymi importami
  • Testuj import na małej próbce danych (5-10 rekordów)
  • Upewnij się, że numery telefonów są w jednolitym formacie
  • Sprawdź kodowanie pliku (powinno być UTF-8)
  • Usuń puste wiersze z pliku CSV
  • Duże importy (>100 rekordów) mogą trwać kilka minut
Ostrzeżenie
Import automatycznie pomija duplikaty na podstawie numeru telefonu. Jeśli klient o danym numerze już istnieje w systemie, nowy rekord zostanie pominięty. Nie ma możliwości aktualizacji istniejących klientów przez import – tylko dodawanie nowych.

13. Formularz rezerwacji na froncie
System oferuje gotowe shortcody do umieszczenia formularza rezerwacji oraz kalendarza na dowolnej stronie WordPress.

Dostępne shortcody:
ShortcodeFunkcjaParametry
[cc_reservation_form]Formularz rezerwacjititle=”Niestandardowy tytuł”
[cc_reservation_calendar]Kalendarz z zajętymi terminamititle=”Niestandardowy tytuł”
Formularz rezerwacji – pola:
  • Imię – wymagane, tekstowe
  • Nazwisko – wymagane, tekstowe
  • Numer telefonu – wymagane, pole tel z placeholderem
  • Email – opcjonalne, walidacja emaila
  • Wybierz usługę – wymagane, rozwijana lista z cenami
  • Data wizyty – wymagane, pole date (min: dzisiaj)
  • Godzina wizyty – wymagane, select z godzinami pracy
Mechanizmy ochrony formularza:
  • Nonce WordPress – ochrona przed CSRF
  • Walidacja po stronie serwera – sprawdzenie wszystkich pól
  • Sprawdzanie dostępności – czy termin nie jest już zajęty
  • Walidacja interwałów – czy godzina pasuje do ustawionych interwałów
  • Wykrywanie nakładających się rezerwacji – uwzględnianie czasu trwania usług
Używanie shortcode’ów:
  1. Utwórz nową stronę WordPress (Strony → Dodaj nową)
  2. Nazwij ją np. „Rezerwacja online”
  3. W edytorze wklej shortcode: [cc_reservation_form]
  4. Opcjonalnie zmień tytuł: [cc_reservation_form title=”Umów wizytę”]
  5. Opublikuj stronę
  6. Skopiuj link i dodaj do menu witryny
Proces rezerwacji z frontu:
  1. Klient wypełnia formularz
  2. Po kliknięciu „Zarezerwuj wizytę” następuje walidacja
  3. System sprawdza czy klient już istnieje (po numerze telefonu)
  4. Jeśli nie – automatycznie tworzy nowego klienta
  5. Sprawdzana jest dostępność wybranego terminu
  6. Tworzona jest nowa rezerwacja ze statusem „Zaplanowana”
  7. Wysyłane są powiadomienia email (jeśli włączone)
  8. Klient widzi komunikat potwierdzenia
Komunikaty dla użytkownika:
  • Sukces – „Rezerwacja została przyjęta! Potwierdzenie zostało wysłane na email.”
  • Termin zajęty – „Ten termin jest już zajęty. Wybierz inny termin.”
  • Błąd danych – „Wypełnij wszystkie wymagane pola.”
  • Błąd zapisu – „Nie udało się zapisać rezerwacji. Spróbuj ponownie.”
Kalendarz na froncie:
  • Wyświetla wszystkie zajęte terminy jako „Zajęte”
  • Nie pokazuje szczegółów rezerwacji (prywatność)
  • Anulowane wizyty są ukryte
  • Automatyczna lokalizacja (język WordPress)
  • Responsywny design
  • Widoki: miesiąc, tydzień, dzień
Info
Funkcja rezerwacji online musi być włączona w ustawieniach (Ustawienia → Rezerwacje online → „Włącz możliwość rezerwacji przez formularz na stronie”). W przeciwnym razie shortcode wyświetli komunikat o wyłączonej funkcji.

14. Personalizacja wyglądu
System oferuje zaawansowaną personalizację kolorów interfejsu dla idealnego dopasowania do identyfikacji wizualnej firmy.

Elementy personalizacji:
  • Kolor przewodni – główny kolor używany w interfejsie
  • Predefiniowane palety – 8 gotowych schematów kolorystycznych
  • Podgląd na żywo – natychmiastowa wizualizacja zmian
  • Automatyczne odcienie – system generuje kolor hover (-30 brightness)
Predefiniowane palety kolorów:
NazwaKolor HEXZastosowanie
Niebieski (domyślny)#007bffUniwersalny, profesjonalny
Zielony#28a745Ekologia, zdrowie
Turkusowy#17a2b8Nowoczesny, świeży
Fioletowy#6f42c1Luksusowy, kreatywny
Różowy#e83e8cKobiecy, delikatny
Pomarańczowy#fd7e14Energiczny, ciepły
Czerwony#dc3545Odważny, wyrazisty
Ciemnoszary#343a40Elegancki, stonowany
Elementy stylowane kolorem przewodnim:
  • Formularz rezerwacji – przyciski, nagłówki, fokus inputów
  • Kalendarz – przyciski nawigacji, dzisiejsza data, wskaźnik czasu
  • Przyciski – tło, hover, active, focus
  • Inputy – obramowanie przy focus, lewa krawędź wymaganych pól
  • Nagłówki – dolna krawędź (border-bottom)
Ustawianie koloru przewodniego:
  1. Przejdź do Rezerwacje → Ustawienia
  2. Znajdź sekcję „Wygląd frontendu”
  3. Kliknij w pole kolorów lub wybierz z palety
  4. Użyj przycisków „Szybki wybór kolorów” dla predefiniowanych palet
  5. Sprawdź podgląd na żywo (przykładowy przycisk, nagłówek, input)
  6. Zapisz ustawienia
Podgląd na żywo:
  • Przykładowy przycisk – tło w kolorze przewodnim, hover ciemniejszy
  • Przykładowy nagłówek – dolna krawędź w kolorze przewodnim
  • Pole input – obramowanie focus w kolorze przewodnim
  • Interaktywność – hover na przycisku, focus na input
Mechanizm automatycznego ciemnienia:
// Funkcja adjust_color_brightness w Plugin.php
public static function adjust_color_brightness($hex, $steps) {
    // Konwersja HEX na RGB
    // Dodanie/odjęcie $steps do każdej składowej
    // Konwersja z powrotem na HEX
    // Zwrócenie ciemniejszego/jaśniejszego koloru
}
Obsługa dark mode:
  • Style automatycznie dostosowują się do preferencji użytkownika
  • Użycie media query: @media (prefers-color-scheme: dark)
  • Kolor przewodni działa zarówno w light jak i dark mode
Wskazówka
Wybierz kolor przewodni pasujący do Twojej marki i testuj podgląd na żywo przed zapisaniem. Pamiętaj o kontraście – ciemne kolory (ciemnoszary, fioletowy) mogą być mniej czytelne na ciemnym tle. Jasne kolory (pomarańczowy, różowy) świetnie działają na jasnym tle.

15. Powiadomienia email
System automatycznych powiadomień informuje klientów i administratorów o nowych rezerwacjach oraz ich statusie.

Typy powiadomień:
  • Potwierdzenie dla klienta – email po udanej rezerwacji z frontu
  • Powiadomienie dla admina – informacja o nowej rezerwacji
  • Automatyczne wysyłanie – tylko dla rezerwacji z frontu
  • Ręczne rezerwacje – bez automatycznych powiadomień
Zawartość emaila dla klienta:
Temat: Potwierdzenie rezerwacji - [Nazwa witryny]
Cześć [Imię klienta]!
Twoja rezerwacja została potwierdzona.
Szczegóły:

Usługa: [Nazwa usługi]
Data: [Data rezerwacji]
Godzina: [Godzina]

Do zobaczenia!
[Nazwa witryny]
Zawartość emaila dla admina:
Temat: Nowa rezerwacja - [Imię klienta]
[Ta sama treść co dla klienta]
Konfiguracja powiadomień:
  1. Przejdź do Rezerwacje → Ustawienia
  2. Znajdź sekcję „Powiadomienia”
  3. Zaznacz „Wysyłaj powiadomienia email o rezerwacjach”
  4. Wprowadź email administratora (domyślnie: admin_email WordPress)
  5. Zapisz ustawienia
Wymagania techniczne:
  • WordPress musi mieć skonfigurowaną funkcję wp_mail()
  • Serwer musi umożliwiać wysyłanie emaili
  • Klient musi podać poprawny adres email w formularzu
  • Dla pewniejszej dostarczalności zalecamy wtyczkę SMTP (np. WP Mail SMTP)
Kiedy powiadomienia są wysyłane:
AkcjaEmail do klientaEmail do admina
Rezerwacja z frontu✓ Tak✓ Tak
Rezerwacja z panelu✗ Nie✗ Nie
Edycja rezerwacji✗ Nie✗ Nie
Anulowanie✗ Nie✗ Nie
Rozwiązywanie problemów z emailami:
  • Email nie dochodzi – sprawdź spam, skonfiguruj SMTP
  • Błędny nadawca – WordPress używa [email protected]
  • Brak emaila klienta – pole email jest opcjonalne, sprawdź czy wypełnione
  • Funkcja wyłączona – sprawdź checkbox w ustawieniach powiadomień
Ostrzeżenie
Funkcja powiadomień SMS wymieniona w ustawieniach jest obecnie w przygotowaniu i nie działa. Zaznaczenie tego checkboxa nie ma żadnego efektu. Planujemy dodać integrację z popularnymi bramkami SMS w przyszłych wersjach.

16. Ustawienia zaawansowane
Sekcja ustawień ogólnych oferuje szczegółową konfigurację wszystkich aspektów działania systemu rezerwacji.

Ustawienia podstawowe:
  • Waluta – PLN, EUR, USD, GBP
  • Pozycja waluty – przed kwotą lub po kwocie
  • Format daty – np. d.m.Y (31.12.2025), Y-m-d (2025-12-31)
  • Format czasu – H:i (24h) lub h:i A (12h z AM/PM)
Godziny pracy:
  • Godzina rozpoczęcia – początek dnia pracy (domyślnie 08:00)
  • Godzina zakończenia – koniec dnia pracy (domyślnie 18:00)
  • Interwał rezerwacji – co ile minut możliwe są rezerwacje (np. 15, 30, 45, 60)
Interwały rezerwacji – przykłady:
InterwałGodziny dostępneZastosowanie
15 minut08:00, 08:15, 08:30, 08:45…Szybkie usługi
30 minut08:00, 08:30, 09:00, 09:30…Standard dla większości firm
60 minut08:00, 09:00, 10:00, 11:00…Długie konsultacje
Wygląd frontendu:
  • Kolor przewodni – główny kolor interfejsu (szczegóły w rozdziale 14)
  • Predefiniowane palety – 8 gotowych schematów kolorystycznych
  • Podgląd na żywo – interaktywna wizualizacja zmian
Rezerwacje online:
  • Rezerwacje z frontu – włącz/wyłącz formularz na stronie
  • Widok kalendarza – miesiąc / tydzień / dzień
Powiadomienia:
  • Powiadomienia email – automatyczne maile po rezerwacji
  • Email administratora – adres do powiadomień (domyślnie admin_email WP)
  • Powiadomienia SMS – funkcja w przygotowaniu (nieaktywna)
Dane demo:
  • Włącz dodawanie przykładowych danych – automatyczne dane przy aktywacji
  • 3 przykładowych klientów
  • 4 przykładowe usługi
  • 5 przykładowych rezerwacji (przyszłe i historyczne)
Lista dostępnych shortcode’ów:
  • Wyświetlana w ustawieniach tabela ze wszystkimi shortcode’ami
  • Opis każdego shortcode’a i jego parametrów
  • Przykłady użycia
  • Przycisk „Kopiuj” do schowka dla każdego shortcode’a
Zapisywanie ustawień:
// Ustawienia są przetwarzane przez:
admin_post_cc_wp_cr_save_settings
// I zapisywane w opcji WordPress:
cc_wp_cr_options (tablica wszystkich ustawień)
// Dostęp do ustawień w kodzie:
$plugin->get_option('currency'); // pojedyncza opcja
$plugin->get_all_options(); // wszystkie opcje
Notatka
Po zmianie interwału rezerwacji zalecamy przejrzenie istniejących rezerwacji. Niektóre godziny mogą nie pasować do nowego interwału (np. 08:20 przy interwale 30min). System frontendowy automatycznie waliduje zgodność z interwałem.

17. Rozwiązywanie problemów
Wtyczka nie zapisuje ustawień
  1. Sprawdź, czy masz aktywną licencję (Ustawienia → Licencja)
  2. Upewnij się, że jesteś zalogowany jako administrator
  3. Sprawdź uprawnienia zapisu do bazy danych
  4. Wyłącz cache WordPress i wtyczki cache
  5. Sprawdź logi błędów PHP (WP_DEBUG = true)
  6. Upewnij się, że nonce przechodzi walidację
Kalendarz nie wyświetla rezerwacji
  1. Sprawdź czy są jakieś rezerwacje w systemie
  2. Upewnij się że rezerwacje mają ustawioną datę i godzinę
  3. Sprawdź konsolę przeglądarki w poszukiwaniu błędów JavaScript
  4. Zweryfikuj czy FullCalendar się załadował (sprawdź źródła strony)
  5. Wyczyść cache przeglądarki i wtyczek cache
  6. Sprawdź czy AJAX endpoint działa (admin-ajax.php)
Formularz rezerwacji nie działa na froncie
  1. Upewnij się że funkcja jest włączona w ustawieniach
  2. Sprawdź czy shortcode jest poprawnie wklejony
  3. Zweryfikuj w konsoli przeglądarki błędy JavaScript
  4. Upewnij się że skrypt reservation-form-frontend.js się załadował
  5. Sprawdź czy nonce jest generowany poprawnie
  6. Wyłącz inne wtyczki dla wykrycia konfliktu
Powiadomienia email nie są wysyłane
  1. Sprawdź czy funkcja jest włączona w ustawieniach
  2. Upewnij się że klient podał email w formularzu
  3. Sprawdź folder spam
  4. Zweryfikuj konfigurację wp_mail() (testowa wysyłka)
  5. Zainstaluj wtyczkę SMTP (np. WP Mail SMTP)
  6. Sprawdź logi serwera pocztowego
Import CSV zwraca błędy
  1. Sprawdź format pliku (separator: przecinek, kodowanie: UTF-8)
  2. Upewnij się że pierwszy wiersz to nagłówki
  3. Zweryfikuj czy wszystkie wymagane kolumny są wypełnione
  4. Sprawdź poprawność numerów telefonów
  5. Usuń puste wiersze z pliku
  6. Testuj na małej próbce (5-10 rekordów)
Statystyki pokazują nieprawidłowe dane
  1. Sprawdź czy rezerwacje mają poprawny status („Zakończona” dla statystyk)
  2. Upewnij się że usługi mają przypisane ceny
  3. Zweryfikuj daty rezerwacji (czy pasują do filtrowanego okresu)
  4. Sprawdź czy rabaty są prawidłowo obliczane
  5. Przebuduj cache statystyk (wyłącz/włącz wtyczkę)
Blokada czasu nie działa poprawnie
  1. Upewnij się że checkbox „Blokada czasu” jest zaznaczony
  2. Sprawdź czy godzina zakończenia jest podana
  3. Zweryfikuj czy godziny nie nakładają się z innymi rezerwacjami
  4. Sprawdź czy JavaScript obsługujący ukrywanie pól działa
  5. Wyczyść cache przeglądarki
Kolor przewodni nie zmienia się na froncie
  1. Upewnij się że kliknąłeś „Zapisz ustawienia”
  2. Wyczyść cache WordPress i wtyczek cache
  3. Wyczyść cache przeglądarki (Ctrl+F5 lub Cmd+Shift+R)
  4. Sprawdź czy style inline są generowane w kodzie źródłowym
  5. Zweryfikuj czy używasz najnowszej wersji wtyczki
Błąd
Jeśli problemy nadal występują, włącz debugowanie WordPress (WP_DEBUG = true w wp-config.php) i sprawdź logi błędów. W przypadku problemów z licencją lub błędów krytycznych skontaktuj się ze wsparciem COCOS przez cocos.codes/wsparcie.

18. FAQ
Czy mogę używać wtyczki na wielu witrynach?
Licencja jest przypisana do pojedynczej domeny. Dla wielu witryn należy zakupić osobne licencje lub licencję wielostanowiskową.

Czy wtyczka jest kompatybilna z WooCommerce?
Tak, wtyczka działa niezależnie od WooCommerce i nie powoduje konfliktów. Można używać obu systemów jednocześnie.

Czy mogę dostosować wygląd formularza rezerwacji?
Tak, przez wybór koloru przewodniego w ustawieniach. Dla zaawansowanych modyfikacji można użyć własnego CSS w motywie.

Jak często są wysyłane powiadomienia email?
Powiadomienia są wysyłane natychmiast po utworzeniu rezerwacji z formularza frontendowego. Rezerwacje z panelu nie wywołują powiadomień.

Czy mogę eksportować dane rezerwacji?
Tak, w zakładce Statystyki znajduje się przycisk „📥 Eksportuj do CSV” który generuje plik CSV z wszystkimi rezerwacjami z wybranego okresu.

Jakie dane są przechowywane o klientach?
Imię, nazwisko, telefon, email (opcjonalnie), notatki i historia wszystkich rezerwacji. Dane są przechowywane w bazie WordPress.

Czy system obsługuje wiele pracowników?
Obecnie wtyczka nie ma wbudowanej obsługi wielu pracowników. Planujemy tę funkcję w przyszłych wersjach.

Czy mogę ograniczyć rezerwacje do określonych dni tygodnia?
Nie ma obecnie takiej funkcji w ustawieniach. Można to osiągnąć przez blokowanie całych dni za pomocą blokad czasowych.

Co się dzieje przy deinstalacji wtyczki?
System automatycznie usuwa wszystkie Custom Post Types (rezerwacje, klienci, usługi), opcje ustawień oraz zadania CRON. Dane są trwale usuwane.

Czy wtyczka obsługuje różne strefy czasowe?
Wtyczka używa strefy czasowej WordPress. Ustaw właściwą strefę w Ustawienia → Ogólne → Strefa czasowa.

Jak mogę przetłumaczyć wtyczkę na inny język?
Wtyczka używa standardowych funkcji tłumaczeń WordPress. Można użyć Loco Translate lub Poedit do tworzenia własnych tłumaczeń.

Czy system sprawdza nakładające się rezerwacje?
Tak, przy rezerwacji z frontu system sprawdza czy wybrany termin nie koliduje z istniejącymi rezerwacjami (uwzględniając czas trwania usług).

Jak działa system napiwków?
Napiwek można dodać ręcznie do każdej rezerwacji w panelu administracyjnym. Jest automatycznie dodawany do ceny końcowej i uwzględniany w statystykach.

Czy mogę zintegrować wtyczkę z kalendarzem Google?
Obecnie wtyczka nie ma integracji z kalendarzem Google. Możesz eksportować dane do CSV i importować do Google Calendar ręcznie.
 

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Ostatnio oglądane produkty

Nowość

WordPress System Rezerwacji Klientów

(0)
$49,00 bez VAT
Nowość
PrestaShop PayNow PrestaShop PayNow

[DARMOWY] PrestaShop PayNow

(0)
$0,00 bez VAT
NowośćHit
Usługi programistyczne PrestaShop i WordPress

Usługi programistyczne PrestaShop i WordPress

(0)
$27,00 bez VAT
NowośćHit
WordPress Anty Spam WordPress Anty Spam

WordPress Anty Spam

(1)
$49,00 bez VAT

Logowanie

Koszyk

Zamknij

Twój koszyk jest pusty.

Rozpocznij zakupy

Pasek boczny